//
// Created by Martin on 2021/9/30.
//

#ifndef DESIGNPATTERN_CPP_WAITER_H
#define DESIGNPATTERN_CPP_WAITER_H

#include "Command.h"
#include <list>

class Waiter {
public:
    Waiter();
    ~Waiter();
    Waiter(const Waiter &) = delete; // 禁止拷贝构造
    Waiter& operator = (const Waiter &) = delete; // 禁止赋值

    // 下菜单
    void setOrder(Command *command);
    // 取消菜单
    void cancelOrder(Command *command);
    // 通知厨房制作
    void notify();
private:
//    Command *command;
    std::list<Command *> orders;
};


#endif //DESIGNPATTERN_CPP_WAITER_H
